/* C.Filetime: Return file timestamp */

#include "kernel.h"
#include "utils.h"

#define ReadCat	5

TIME filetime (const char *file)
{
	int type;
	TIME res;
	int i;
	_kernel_osfile_block osfile;

	for (i = 0; i < 5; ++i)
		res.t[i] = 0;

	type = _kernel_osfile(ReadCat, file, &osfile);

	if (type != 1)
		return res;
	if ((osfile.load & 0xFFF00000) != 0xFFF00000)
		return res;

	res.t[0] = osfile.exec & 0xFF;
	res.t[1] = (osfile.exec >> 8)  & 0xFF;
	res.t[2] = (osfile.exec >> 16) & 0xFF;
	res.t[3] = (osfile.exec >> 24) & 0xFF;
	res.t[4] = osfile.load & 0xFF;
	return res;
}
